--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Node / ReticulumProjects / MeshChatX.git / files / meshchatx / src / frontend / js / registries / wsEventRegistry.js
Displaying Raw • Download
meshchatx/src/frontend/js/registries/wsEventRegistry.js bce42bcdce0e7d2c6d78228e864a4cd1d974cc82 (bce42bcd) Text, 995 B
T8b949e// SPDX-License-Identifier: 0BSD
Tff7b72import Tb4b4b4{ Te6edf3createEmitter Tb4b4b4} Tff7b72from Ta5d6ff"../../libs/emitter.js"Tb4b4b4;
T8b949e/** @type {ReturnType<typeof createEmitter>} */
Tff7b72const Te6edf3emitter Tff7b72= Te6edf3createEmitterTb4b4b4(Tb4b4b4)Tb4b4b4;
T8b949e/**
* @param {string} type
* @param {(payload: Record<string, unknown>) => void | Promise<void>} handler
*/
Tff7b72export Tff7b72function Te6edf3onWsEventTb4b4b4(Te6edf3typeTb4b4b4, Te6edf3handlerTb4b4b4) Tb4b4b4{
Te6edf3emitterTb4b4b4.Te6edf3onTb4b4b4(Te6edf3typeTb4b4b4, Te6edf3handlerTb4b4b4)Tb4b4b4;
Tb4b4b4}
T8b949e/**
* @param {string} type
* @param {(payload: Record<string, unknown>) => void | Promise<void>} handler
*/
Tff7b72export Tff7b72function Te6edf3offWsEventTb4b4b4(Te6edf3typeTb4b4b4, Te6edf3handlerTb4b4b4) Tb4b4b4{
Te6edf3emitterTb4b4b4.Te6edf3offTb4b4b4(Te6edf3typeTb4b4b4, Te6edf3handlerTb4b4b4)Tb4b4b4;
Tb4b4b4}
T8b949e/**
* @param {string} type
* @param {Record<string, unknown>} payload
*/
Tff7b72export Tff7b72async Tff7b72function Te6edf3dispatchWsEventTb4b4b4(Te6edf3typeTb4b4b4, Te6edf3payloadTb4b4b4) Tb4b4b4{
Tff7b72const Te6edf3handlers Tff7b72= Te6edf3emitterTb4b4b4.Te6edf3allTb4b4b4.Te6edf3getTb4b4b4(Te6edf3typeTb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Tff7b72!Te6edf3handlers Tff7b72|| Te6edf3handlersTb4b4b4.Te6edf3length Tff7b72=== T79c0ff0Tb4b4b4) Tb4b4b4{
Tff7b72returnTb4b4b4;
Tb4b4b4}
Tff7b72for Tb4b4b4(Tff7b72const Te6edf3handler Tff7b72of Te6edf3handlersTb4b4b4) Tb4b4b4{
Tff7b72await Te6edf3handlerTb4b4b4(Te6edf3payloadTb4b4b4)Tb4b4b4;
Tb4b4b4}
Tb4b4b4}
T8b949e/**
* @returns {string[]}
*/
Tff7b72export Tff7b72function Te6edf3listRegisteredWsEventTypesTb4b4b4(Tb4b4b4) Tb4b4b4{
Tff7b72return Tffa657ArrayTb4b4b4.Tff7b72fromTb4b4b4(Te6edf3emitterTb4b4b4.Te6edf3allTb4b4b4.Te6edf3keysTb4b4b4(Tb4b4b4)Tb4b4b4)Tb4b4b4;
Tb4b4b4}
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────